#ifndef SYSCALL_CODE_H
#define SYSCALL_CODE_H

typedef enum {
	SYSCALL_KDB,
	SYSCALL_UART_PUTCH,
	SYSCALL_UART_GETCH,

	SYSCALL_MMIO_GET,
	SYSCALL_MMIO_PUT,

	SYSCALL_SHM_ALLOC,
	SYSCALL_SHM_FREE,
	SYSCALL_SHM_MAP,
	SYSCALL_SHM_UNMAP,

	SYSCALL_FB_INFO,
	SYSCALL_FB_WRITE,

	SYSCALL_FORK,
	SYSCALL_GETPID,
	SYSCALL_EXEC_ELF,
	SYSCALL_WAIT,
	SYSCALL_YIELD,
	SYSCALL_EXIT,

	SYSCALL_THREAD,

	SYSCALL_PMALLOC,
	SYSCALL_PFREE,

	SYSCALL_GET_CMD,

	SYSCALL_IPC_OPEN,
	SYSCALL_IPC_CLOSE,
	SYSCALL_IPC_WRITE,
	SYSCALL_IPC_READY,
	SYSCALL_IPC_READ,
	SYSCALL_IPC_RING,
	SYSCALL_IPC_PEER,

	SYSCALL_INITRD_READ_FILE,
	SYSCALL_INITRD_CLONE,

	SYSCALL_PFILE_GET_SEEK,
	SYSCALL_PFILE_SEEK,
	SYSCALL_PFILE_OPEN,
	SYSCALL_PFILE_CLOSE,
	SYSCALL_PFILE_NODE,

	SYSCALL_KSERV_REG,
	SYSCALL_KSERV_GET,

	SYSCALL_GET_CWD,
	SYSCALL_SET_CWD,

	SYSCALL_SET_UID,
	SYSCALL_GET_UID,

	SYSCALL_SEMAPHORE_LOCK,
	SYSCALL_SEMAPHORE_UNLOCK,
	SYSCALL_SEMAPHORE_INIT,
	SYSCALL_SEMAPHORE_CLOSE,

	SYSCALL_SYSTEM_CMD
} syscall_code_t;

#endif
